Colab 실습 가이드

실습의 목적

코드를 외우는 것이 아니라 파일을 읽고 데이터를 정리하는 흐름을 눈으로 확인하는 것. 각 셀이 무엇을 확인하기 위한 코드인지를 이해하면 충분하다.

0. 준비: 파일 업로드

별도 제공

파일 용도 연결 개념
exam_scores.csv 점수 표 데이터 CSV, 자료형 변환, 평균, 조건 분류
scores_text.txt 텍스트 파일 읽기 read / readline / readlines
air_quality_small.csv 대기 오염 측정 데이터 전처리 흐름
station_code_map.csv 측정소 코드표 코드값 → 이름 변환
item_code_map.csv 측정 항목 코드표 PM10, PM2.5 항목명 연결
survey_simple.csv 설문 예시 데이터 항목별 비교, 막대그래프
security_events.csv 보안 사례 데이터 피싱·악성코드·개인정보 사례
users_sample.json JSON 예시 속성명·속성값, 반정형 데이터
런타임 초기화 주의

Colab 런타임이 초기화되면 업로드한 파일이 사라진다. 새로 접속하면 다시 업로드하고, 첫 셀로 파일 목록을 확인한다.

실습 흐름 (노트북 순서)

실습 11단계 흐름:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

0. 파일 업로드 확인
1. 자료형 확인         (str vs int)
2. input() 값          (항상 문자열)
3. 파일 읽기            (read/readline/readlines)
4. strip() / split()   (한 줄 → 리스트)
5. CSV 읽기 + 평균       (DictReader, int 변환)
6. pandas로 표 다루기    (필터링)
7. 전처리               (코드값 → 이름, merge)
8. 시각화               (꺾은선·막대)
9. JSON 구조            (중첩 구조 확인)
10. 보안 사례 필터링      (위험도 '높음'만)
단계 확인할 것 연결 단원
1 "10"+"20" vs int("10")+int("20") 2. 알고리즘과 프로그래밍
2 input() 결과는 문자열 2. 알고리즘과 프로그래밍
3 읽기 방식별 결과 형태 차이 2. 알고리즘과 프로그래밍
4 줄바꿈 제거 후 쉼표로 분리 2. 알고리즘과 프로그래밍
5 CSV 숫자는 문자열 → 변환 필요 1. 데이터 수집과 시각화
6 행과 열, 조건 필터링 1. 데이터 수집과 시각화
7 측정소·항목 코드를 이름으로 1. 데이터 수집과 시각화
8 시간 변화=꺾은선, 비교=막대 1. 데이터 수집과 시각화
9 CSV(표) vs JSON(중첩) 1. 데이터 수집과 시각화
10 사례 → 위협 분류 4. 정보보호와 정보보안

전처리 핵심 장면 (7단계)

대기 오염 데이터는 측정소·항목이 **코드(숫자)**로 들어 있다. 사람이 이해할 수 있게 이름으로 바꾸는 것이 전처리.

코드값 → 이름 변환:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

원본:  측정소코드 105, 측정항목코드 9, 평균값 58
                │ merge (코드표와 연결)
                ↓
변환:  강동구, PM2.5, 58 ㎍/㎥

코드표:
  station_code_map.csv : 105 → 강동구
  item_code_map.csv    : 9   → PM2.5
air2 = air.merge(station, on="측정소코드", how="left")
air2 = air2.merge(item, on="측정항목코드", how="left")

마지막 확인 질문

아래에 답할 수 있으면 실습 흐름은 충분히 잡힌 것:

  1. input()으로 받은 값은 왜 바로 숫자 계산이 안 될까?
  2. read(), readline(), readlines()는 어떻게 다를까?
  3. strip()split()은 각각 어떤 역할을 할까?
  4. CSV에서 읽은 숫자는 왜 int()로 바꿔야 할까?
  5. 측정소·측정 항목 코드를 이름으로 바꾸는 작업은 왜 전처리일까?
  6. 시간 변화는 어떤 그래프가 적합할까?
  7. JSON은 CSV와 무엇이 다를까?
그래프 한글 깨짐

Colab matplotlib는 한글 폰트가 깨질 수 있다. 실습에서는 제목·축 이름을 영어로 쓰면 안전. 핵심은 글꼴이 아니라 어떤 데이터를 어떤 그래프로 보여주는가.

관련 노트